From: Brian Frohring [Brian_Frohring@Trimble.COM]
Sent: Friday, March 10, 2000 3:07 AM
To: 'Mike Jackson'
Cc: Bruce Stephens
Subject: 4700 Streamed Data Collection

Mike,

Attached is a ZIP file containing WIN32 utilities and batch files to support
streamed data collection using the 4700.

Note that you could alternatively use the Linux version of the R-Utilities
that we provided in December.  As I mentioned in our phone conversation on
Thursday, we noted occasional data loss when performing streamed data
capture under Linux.  We determined that since the default hard drive
settings under Linux mask other interrupts, changing these default settings
results in improved serial port performance.  We have run tests which
demonstrated that no epochs were lost when the disk interrupts were
modified.  An example of the command used to prevent masking of interrupts
by the disk drive(rs) is as follows.

	hdparm -u 1 /dev/hda

This type of command would be performed for all disk drives on the Linux
machine.  Here is an excerpt from the man page for hdparm regarding the -u
command line option.

       -u     Get/set interrupt-unmask flag  for  the  drive.   A
              setting  of  1  permits  the driver to unmask other
              interrupts during processing of a  disk  interrupt,
              which  greatly  improves Linux's responsiveness and
              eliminates "serial port overrun" errors.  Use  this
              feature  with caution: some drive/controller combi
              nations do not tolerate the increased I/O latencies
              possible when this feature is enabled, resulting in
              massive  filesystem  corruption.   In   particular,
              CMD-640B  and RZ1000 (E)IDE interfaces can be unre
              liable (due to a hardware flaw) when this option is
              used  with  kernel  versions  earlier  than 2.0.13.
              Disabling the IDE prefetch feature of these  inter
              faces (usually a BIOS/CMOS setting) provides a safe
              fix for the problem for use with earlier kernels. 

I think it is unlikely that you would have any problems under Linux, but I
am reluctant to recommend that you run a similar test on your system to
maximize serial port performance at this time.  For that reason, I suggest
giving the WIN32 utilities a try first.  If you have any problems performing
streamed data collection using the WIN32 utilities, we can support testing
under Linux, with or without the interrupt handling optimization mentioned
above.

Performing tests under WIN32 using two PCs would be optimum but should not
be necessary.  Please see the MS Word file in the ZIP archive for the
details of using these batch files and utilities, including how to modify
one batch file to enable use of two PCs if desired.

Please also note that all programs provided in the attached ZIP file were
compiled as WIN32 console applications.  The previous versions of some of
the EXE files were WIN16 console applications.  Please make sure to use the
latest versions included in this ZIP archive for all streamed data logging
testing.

Call me if you have any questions or problems.

--Brian


>  <<Stream Utils.zip>> 
